package futbolfacil.servlet;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import junit.framework.Assert;

import futbolfacil.excepcion.DAOExcepcion;
import futbolfacil.modelo.Cancha;
import futbolfacil.modelo.Dueno;
import futbolfacil.modelo.Horario;
import futbolfacil.modelo.Local;
import futbolfacil.negocio.SeguridadNegocio;

/**
 * Servlet implementation class HorarioServlet
 */
@WebServlet("/HorarioServlet")
public class HorarioServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public HorarioServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		SeguridadNegocio neg = new SeguridadNegocio();
		
		Collection<Local> listLocales = new ArrayList<Local>();
		Collection<Cancha> listCanchas = new ArrayList<Cancha>();
		try {			
			listLocales = neg.ListarLocal();
			listCanchas = neg.listarCanchas();
		} catch (Exception e) {
			//throw e.getMessage();
		}
		
		//**********
		String hh="";
		Collection<String> listHoras = new ArrayList<String>();
		for(int j=0; j<25; j++){
			if(j<10){
				hh = "0"+ j + ":00";		
			} else {
				hh = j + ":00";
			}
			listHoras.add(hh);			
		}
		
		request.setAttribute("ListadoLocales", listLocales);
		request.setAttribute("ListadoCanchas", listCanchas);
		request.setAttribute("ListadoHoras", listHoras);
		RequestDispatcher rd = request.getRequestDispatcher("/frmHorario.jsp");
		rd.forward(request, response);

	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		int codCancha = Integer.parseInt(request.getParameter("cboCancha"));
		String diaHorario = request.getParameter("cboDia");
		String inicioHorario = request.getParameter("cboHoraInicio");
		String finHorario = request.getParameter("cboHoraFin");
		double precioHorario = Double.parseDouble(request.getParameter("txtPrecio"));		
		String promocionHorario = request.getParameter("cboPromocion");
		String estadoHorario = request.getParameter("cboInactivo");
		SeguridadNegocio neg = new SeguridadNegocio();		
		Horario objHorario = new Horario();
		
		objHorario.setDiaHorario(diaHorario);
		objHorario.setInicioHorario(inicioHorario);
		objHorario.setFinHorario(finHorario);
		objHorario.setPrecioHorario(precioHorario);
		objHorario.setPromocionHorario(promocionHorario);
		objHorario.setEstadoHorario(estadoHorario);
		
		Cancha objCancha = new Cancha();		
		try {
			objCancha = neg.buscarCanchaPorCodigo(codCancha);
		} catch (DAOExcepcion e) {
			request.setAttribute("msg1", e.getMessage());
			request.setAttribute("valor", "true");
		}
		
		objHorario.setCanchaHorario(objCancha);
		
		//Act
		try {
			neg.insertar(objHorario);
			request.setAttribute("msg1", "Se registro exitosamente el Horario!");
			request.setAttribute("valor", "false");
		} catch (DAOExcepcion e) {
			request.setAttribute("msg1", e.getMessage());
			request.setAttribute("valor", "true");
			
			//Data
			/*
			request.setAttribute("codCancha", codCancha);
			request.setAttribute("diaHorario", diaHorario);
			request.setAttribute("inicioHorario", inicioHorario);
			request.setAttribute("finHorario", finHorario);
			request.setAttribute("precioHorario", precioHorario);
			request.setAttribute("promocionHorario", promocionHorario);
			request.setAttribute("estadoHorario", estadoHorario);
			*/
		}
		
		RequestDispatcher rd = request.getRequestDispatcher("/frmHorario.jsp");
		rd.forward(request, response);
	}

}
